oo::class create Plugin {
    method getPluginEvents {} {}

    method withUnlock {widget cmds} {
        $widget configure -state normal
        uplevel $cmds
        $widget configure -state disable
    }
}